package chapter3.homework;

import java.io.File;
import java.io.IOException;

/**
 * @Project ：learn_java
 * @File ：Q2.java
 * @IDE ：IntelliJ IDEA
 * @Author ：自由如风间
 * @Date ：2025/3/1 20:23
 * @Description ：
（1）检查D盘的testIO文件夹下是否存在文件a.txt，如果不存在则创建该文件。
（2）获取D盘的testIO文件夹下的a.txt文件的文件名，文件大小，文件的绝对路径和父路径等信息，并将信息输出在控制台
（3）判断File file = new File("d:\testIO");是否文件,是文件则输出：xxx是一个文件，是否文件夹,是文件夹则输出：xxx是一个文件夹
（4）删除D盘的testIO文件夹下的a.txt文件
（5）删除当前模块下的testIO文件夹下的1.txt文件，然后删除testIO文件夹
 */

public class Q2 {
    public static void main(String[] args) {
        // （1）检查D盘的testIO文件夹下是否存在文件a.txt，如果不存在则创建该文件。
        File f1 = new File("D:\\testIO\\a.txt");
        if (f1.exists()) {
            System.out.println("文件已经存在");
        }
        else {
            System.out.println("文件不存在");
            try {
                boolean hasCreated = f1.createNewFile();
            } catch (IOException e) {
                throw new RuntimeException(e);
            } finally {
                System.out.println("文件创建成功");
            }
        }

        // （2）获取D盘的testIO文件夹下的a.txt文件的文件名，文件大小，文件的绝对路径和父路径等信息，并将信息输出在控制台
        System.out.println("文件名：" + f1.getName());
        System.out.println("文件大小：" + f1.length());
        System.out.println("文件的绝对路径：" + f1.getAbsolutePath());

        // （3）判断File file = new File("d:\testIO");是否文件,是文件则输出：xxx是一个文件，是否文件夹,是文件夹则输出：xxx是一个文件夹
        File f2 = new File("D:\\testIO");
        if (f2.isFile()) {
            System.out.println("D:\\testIO是一个文件");
        }
        else if (f2.isDirectory()) {
            System.out.println("D:\\testIO是一个文件夹");
        }

        // （4）删除D盘的testIO文件夹下的a.txt文件
        boolean hasDeleted = f1.delete();
        if (hasDeleted) {
            System.out.println("文件删除成功");
        }
        else {
            System.out.println("文件删除失败");
        }

        // （5）删除当前模块下的testIO文件夹下的1.txt文件，然后删除testIO文件夹
        File f3 = new File("src\\chapter3\\homework\\testIO\\1.txt");
        boolean hasDeleted2 = f3.delete();
        File f4 = new File("src\\chapter3\\homework\\testIO");
        boolean hasDeleted3 = f4.delete();
        if (hasDeleted2 && hasDeleted3) {
            System.out.println("1.txt和testIO文件夹删除成功");
        }
        else {
            System.out.println("出现错误，操作未完成");
        }
    }
}
